home *** CD-ROM | disk | FTP | other *** search
- 1000 SCREEN 3 'TOWNSé═ 1000 SCREEN@ 0
- 1010 WIDTH 80,25
- 1020 CONSOLE 0,25,0,1 'TOWNSé═ 1020 CONSOLE 0,25,0
- 1030 CLS 3 'TOWNSé═ 1030 CLS 0
- 1040 DIM TX(4,4),TY(4,4),TC(4,4) 'â^ü[âQâbâgé╠âfü[â^
- 1050 DIM TF(4) 'â^ü[âQâbâgæ╢ì▌âtâëâO
- 1060 FOR STAGE=0 TO 4
- 1070 FOR I=0 TO 4
- 1080 READ TX(STAGE,I),TY(STAGE,I),TC(STAGE,I) 'âXâeü[âWüEâfü[â^ô╟é▌é╛é╡
- 1090 NEXT
- 1100 NEXT
- 1110 G=9.8 'Ådù═ë┴æ¼ôx
- 1120 DT=.1 'ìÅé▌Ä₧è╘
- 1130 WHILE -1
- 1140 SCORE=0
- 1150 FOR STAGE=0 TO 4
- 1160 GOSUB *STAGEMAKE
- 1170 GOSUB *GAMEMAIN
- 1180 NEXT
- 1190 GOSUB *GAMEOVER
- 1200 WEND
- 1210 END
- 1220 *GAMEOVER
- 1230 BEEP
- 1240 LOCATE 29,12
- 1250 PRINT "ü@éféüéìéàü@énéûéàéÆü@"
- 1260 GOSUB *WAITSPACE
- 1270 RETURN
- 1280 *STAGEMAKE
- 1290 CLS 3 'TOWNSé═ 1290 CLS 0
- 1300 PRINT "âuâëâôâRüEâLâââbâ`üEâQü[âÇ"
- 1310 GOSUB *PUTSCORE
- 1320 FOR I=0 TO 4
- 1330 CIRCLE(TX(STAGE,I),TY(STAGE,I)),20,TC(STAGE,I) 'â^ü[âQâbâgò\Ī
- 1340 TF(I)=1 'â^ü[âQâbâgæ╢ì▌âtâëâO
- 1350 NEXT
- 1360 BL=250 'âuâëâôâRé╠Æ╖é│
- 1370 BV=30 'âuâëâôâRé╠Åëè·æ¼ôx
- 1380 BR=0 'âuâëâôâRé╠Åëè·èpôxüiâëâWâAâôüj
- 1390 BM=1 'âuâëâôâRé╠Ä┐ù╩
- 1400 C=7
- 1410 GOSUB *PUTBURANKO
- 1420 RETURN
- 1430 *GAMEMAIN
- 1440 TI=1000 'ÄcéΦÄ₧è╘
- 1450 GF=0
- 1460 WHILE GF=0
- 1470 GOSUB *MOVEBURANKO 'âuâëâôâRê┌ô«
- 1480 C=0
- 1490 GOSUB *PUTBURANKO
- 1500 BR=NEWBR 'ÉVé╡éóèpôxé┼ò`é½Æ╝é╖
- 1510 C=7
- 1520 GOSUB *PUTBURANKO
- 1530 GOSUB *KEYCHECK
- 1540 GOSUB *PUTTARGET
- 1550 TI=TI-1
- 1560 GOSUB *PUTTIME
- 1570 IF TI<1 AND GF=0 THEN GF=1 'Ä₧è╘É╪éΩ
- 1580 WEND
- 1590 IF GF=1 THEN GOSUB *TIMEOVER ELSE GOSUB *STAGECLEAR
- 1600 RETURN
- 1610 *PUTBURANKO 'âuâëâôâRé╠ò\Ī
- 1620 LINE(320,0)-(320+BL*SIN(BR),BL*COS(BR)),C 'TOWNSé═ ü`BL*COS(BR)),PSET,C
- 1630 CIRCLE(320+(BL+30)*SIN(BR),(BL+30)*COS(BR)),30,C
- 1640 RETURN
- 1650 *PUTSCORE
- 1660 IF SCORE>HISCORE THEN HISCORE=SCORE
- 1670 LOCATE 25,0
- 1680 PRINT USING "High Score:#### Score:#### Stage:#";HISCORE;SCORE;STAGE+1
- 1690 RETURN
- 1700 *PUTTIME
- 1710 LOCATE 70,0
- 1720 PRINT USING "Time:#####";TI
- 1730 RETURN
- 1740 *MOVEBURANKO 'âuâëâôâRé╠ê┌ô«
- 1750 FG=BM*G
- 1760 FG2=-FG*SIN(BR)
- 1770 A=FG2/BM
- 1780 BV=BV+A*DT
- 1790 NEWBR=BR+BV*DT/BL
- 1800 BX=320+(BL+30)*SIN(BR) 'âuâëâôâRé╠ì└òW
- 1810 BY=(BL+30)*COS(BR)
- 1820 FOR I=0 TO 4
- 1830 IF TF(I)=1 AND SQR((TX(STAGE,I)-BX)*(TX(STAGE,I)-BX)+(TY(STAGE,I)-BY)*(TY(STAGE,I)-BY))<51 THEN GOSUB *GETTARGET 'â^ü[âQâbâgë±Ä√â`âFâbâN
- 1840 NEXT
- 1850 RETURN
- 1860 *GETTARGET
- 1870 BEEP 1
- 1880 CIRCLE(TX(STAGE,I),TY(STAGE,I)),20,0 'â^ü[âQâbâgÅ┴ïÄ
- 1890 TF(I)=0 'â^ü[âQâbâgæ╢ì▌âtâëâOâNâèâA
- 1900 SCORE=SCORE+10
- 1910 GOSUB *PUTSCORE
- 1920 BEEP 0
- 1930 RETURN
- 1940 *KEYCHECK 'âLü[ôⁿù═â`âFâbâN
- 1950 NBL=-1
- 1960 K$=INKEY$
- 1970 IF K$="2" THEN NBL=BL+10 'âuâëâôâRé≡ÉLé╬é╖
- 1980 IF K$="8" THEN NBL=BL-10 'âuâëâôâRé≡Åké▀éΘ
- 1990 IF NBL<100 OR NBL>350 THEN NBL=-1
- 2000 IF NBL<0 THEN RETURN
- 2010 C=0
- 2020 GOSUB *PUTBURANKO
- 2030 BL=NBL
- 2040 C=7
- 2050 GOSUB *PUTBURANKO
- 2060 RETURN
- 2070 *TIMEOVER
- 2080 LOCATE 31,12
- 2090 PRINT "éséëéìéàü@énéûéàéÆ"
- 2100 GOSUB *WAITSPACE
- 2110 RETURN
- 2120 *STAGECLEAR
- 2130 LOCATE 29,12
- 2140 PRINT "éréöéüéçéàü@ébéîéàéüéÆ"
- 2150 SCORE=SCORE+INT(TI/100)
- 2160 GOSUB *PUTSCORE
- 2170 GOSUB *WAITSPACE
- 2180 RETURN
- 2190 *WAITSPACE
- 2200 WHILE INKEY$<>" "
- 2210 WEND
- 2220 RETURN
- 2230 *PUTTARGET 'â^ü[âQâbâgò\Ī
- 2240 F=0
- 2250 FOR I=0 TO 4
- 2260 IF TF(I)=1 THEN CIRCLE(TX(STAGE,I),TY(STAGE,I)),20,TC(STAGE,I):F=1
- 2270 NEXT
- 2280 IF F=0 THEN GF=2
- 2290 RETURN
- 2300 DATA 100,300,1 ,200,250,2 ,300,100,3 ,450,300,4 ,550,300,5
- 2310 DATA 200,100,1 ,300,100,2 ,500,100,3 ,100,300,4 ,400,200,5
- 2320 DATA 150,250,1 ,550,250,2 ,450,250,3 ,300,80,4 ,50,200,5
- 2330 DATA 100,120,1 ,450,100,2 ,500,50,3 ,200,350,4 ,400,100,5
- 2340 DATA 50,50,1 ,50,300,2 ,550,100,3 ,350,150,4 ,400,350,5